package com.example.demo.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.demo.bean.sysrolemenu.SysRoleMenuDO;
import com.example.demo.mapper.sysrolemenu.SysRoleMenuMapper;
import com.example.demo.service.ISysRoleMenuService;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

@Service
public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRoleMenuDO> implements ISysRoleMenuService {

    @Resource
    private SysRoleMenuMapper sysRoleMenuMapper;

    @Override
    public int addSysRoleMenu(SysRoleMenuDO sysRoleMenuDO) {
        return sysRoleMenuMapper.insert(sysRoleMenuDO);
    }

    @Override
    public void deleteSysRoleMenuByRoleId(SysRoleMenuDO sysRoleMenuDO) {
        QueryWrapper<SysRoleMenuDO> deleteWrapper = new QueryWrapper<>();
        deleteWrapper.eq("role_id", sysRoleMenuDO.getRoleId());
        sysRoleMenuMapper.delete(deleteWrapper);
    }

    @Override
    public int updateSysRoleMenu(SysRoleMenuDO sysRoleMenuDO) {
        QueryWrapper<SysRoleMenuDO> updateWrapper = new QueryWrapper<>();
        updateWrapper.eq("id", sysRoleMenuDO.getId());
        return sysRoleMenuMapper.updateById(sysRoleMenuDO);

    }

    @Override
    public SysRoleMenuDO getSysRoleMenuByRoleId(SysRoleMenuDO sysRoleMenuDO) {
        QueryWrapper<SysRoleMenuDO> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("role_id", sysRoleMenuDO.getRoleId());
        return sysRoleMenuMapper.selectOne(queryWrapper);
    }
}
